package com.shanzhu.volunteer.modules.ai.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;
import java.util.Map;

/**
 * AI评估结果对象
 */
@Data
@ApiModel("AI评估结果DTO")
public class AIEvaluationResultDTO {
    
    @ApiModelProperty("学生学号")
    private String studentNo;
    
    @ApiModelProperty("学生姓名")
    private String studentName;
    
    @ApiModelProperty("评估总结")
    private String summary;
    
    @ApiModelProperty("分析结果")
    private Map<String, DimensionAnalysisDTO> analyses;
    
    @ApiModelProperty("推荐志愿列表")
    private List<RecommendationDTO> recommendations;
    
    /**
     * 维度分析结果
     */
    @Data
    @ApiModel("维度分析DTO")
    public static class DimensionAnalysisDTO {
        
        @ApiModelProperty("维度名称")
        private String name;
        
        @ApiModelProperty("维度描述")
        private String description;
        
        @ApiModelProperty("分析结果")
        private String analysis;
        
        @ApiModelProperty("分数")
        private Integer score;
    }
    
    /**
     * 推荐结果
     */
    @Data
    @ApiModel("推荐项DTO")
    public static class RecommendationDTO {
        
        @ApiModelProperty("院校代码")
        private String schoolCode;
        
        @ApiModelProperty("院校名称")
        private String schoolName;
        
        @ApiModelProperty("专业代码")
        private String majorCode;
        
        @ApiModelProperty("专业名称")
        private String majorName;
        
        @ApiModelProperty("匹配度")
        private Double matchDegree;
        
        @ApiModelProperty("推荐理由")
        private String reason;
    }
} 